Refinement Types as Higher-Order Dependency Pairs
نویسنده
چکیده
Refinement types are a well-studied manner of performing in-depth analysis on functional programs. The dependency pair method is a very powerful method used to prove termination of rewrite systems; however its extension to higher-order rewrite systems is still the subject of active research. We observe that a variant of refinement types allows us to express a form of higher-order dependency pair method: from the rewrite system labeled with typing information, we build a type-level approximated dependency graph, and describe a type level embeddingorder. We describe a syntactic termination criterion involving the graph and the order, and prove our main result: if the graph passes the criterion, then every well-typed term is strongly normalizing.
منابع مشابه
Argument Filterings and Usable Rules for Simply Typed Dependency Pairs
Simply typed term rewriting [Yam01] is a framework of higher-order term rewriting without bound variables. The authors extended the first-order dependency pair approach [AG00] to the case of simply typed term rewriting [AY05]. They gave a characterization of minimal non-terminating simply typed terms and incorporated the notions of dependency pairs, dependency graphs, and estimated dependency g...
متن کاملModular Termination Proofs for Rewriting Using Dependency Pairs
Recently, Arts and Giesl developed the dependency pair approach which allows automated termination and innermost termination proofs for many term rewriting systems (TRSs) for which such proofs were not possible before. The motivation for this approach was that virtually all previous techniques for automated termination proofs of TRSs were based on simplification orderings. In practice, however,...
متن کاملHarnessing First Order Termination Provers Using Higher Order Dependency Pairs
Many functional programs and higher order term rewrite systems contain, besides higher order rules, also a significant first order part. We discuss how an automatic termination prover can split a rewrite system into a first order and a higher order part. The results are applicable to all common styles of higher order rewriting with simple types, although some dependency pair approach is needed ...
متن کاملHigher Order Dependency Pairs for Algebraic Functional Systems
We extend the termination method using dynamic dependency pairs to higher order rewriting systems with beta as a rewrite step, also called Algebraic Functional Systems (AFSs). We introduce a variation of usable rules, and use monotone algebras to solve the constraints generated by dependency pairs. This approach differs in several respects from those dealing with higher order rewriting modulo b...
متن کاملProving and Disproving Termination of Higher-Order Functions
The dependency pair technique is a powerful modular method for automated termination proofs of term rewrite systems (TRSs). We present two important extensions of this technique: First, we show how to prove termination of higher-order functions using dependency pairs. To this end, the dependency pair technique is extended to handle (untyped) applicative TRSs. Second, we introduce a method to pr...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2011